/**
 * @Auther: ChenforCode
 * @Date: 2018/9/12 15:36
 * @Description: 完成创建学生管理员和系统管理员的相关逻辑
 */
package cn.chenforcode.service;

import cn.chenforcode.dao.BookAdminDAO;
import cn.chenforcode.dao.StuAdminDAO;
import cn.chenforcode.dao.StudentDAO;
import cn.chenforcode.entity.BookAdmin;
import cn.chenforcode.entity.StuAdmin;
import cn.chenforcode.entity.Student;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class AdminService {

    @Autowired
    private BookAdminDAO bookAdminDAO;

    @Autowired
    private StuAdminDAO stuAdminDAO;

    /*----以下为最高权限管理员的相关操作*/

    /**
     * @return java.lang.String
     * @Author ChenforCode
     * @Description //TODO 完成书籍管理员的创建逻辑
     * @Date 15:40 2018/9/12
     * @Param [bookAdmin]
     **/
    public String addBookAdmin(BookAdmin bookAdmin) {
        if (bookAdminDAO.queryCanAdd(bookAdmin.getBaname()) == 1) {
            bookAdminDAO.addBookAdmin(bookAdmin);
            return "success";
        }
        return "failed";
    }

    /**
     * @return java.lang.String
     * @Author ChenforCode
     * @Description //TODO 完成学生管理员的创建操作
     * @Date 15:42 2018/9/12
     * @Param [stuAdmin]
     **/
    public String addStuAdmin(StuAdmin stuAdmin) {
        if (stuAdminDAO.queryCanAdd(stuAdmin.getSaname()) == 1) {
            stuAdminDAO.addStuAdmin(stuAdmin);
            return "success";
        }
        return "failed";
    }

    /**
     * @return java.util.List<cn.chenforcode.entity.BookAdmin>
     * @Author ChenforCode
     * @Description //TODO 拿到所有的书籍管理员
     * @Date 10:37 2018/9/13
     * @Param []
     **/
    public List<BookAdmin> getBookAdmins() {
        return bookAdminDAO.getAllBookAdmins();
    }

    /**
     * @return java.util.List<cn.chenforcode.entity.StuAdmin>
     * @Author ChenforCode
     * @Description //TODO 拿到所有的学生管理员
     * @Date 10:37 2018/9/13
     * @Param []
     **/
    public List<StuAdmin> getStuAdmins() {
        return stuAdminDAO.getAllStuAdmin();
    }

    /**
     * @return void
     * @Author ChenforCode
     * @Description //TODO 删除学生管理员
     * @Date 11:52 2018/9/13
     * @Param [id]
     **/
    public void delStuAdmin(String id) {
        stuAdminDAO.delStuAdmin(id);
    }

    /**
     * @return void
     * @Author ChenforCode
     * @Description //TODO 删除学生管理员
     * @Date 11:52 2018/9/13
     * @Param [id]
     **/
    public void delBookAdmin(String id) {
        bookAdminDAO.delBookAdmin(id);
    }

    /**
     * @return void
     * @Author ChenforCode
     * @Description //TODO 更新学生管理员
     * @Date 12:59 2018/9/13
     * @Param [stuAdmin]
     **/
    public void upStuAdmin(StuAdmin stuAdmin) {
        stuAdminDAO.upStuAdmin(stuAdmin);
    }

    /**
     * @return void
     * @Author ChenforCode
     * @Description //TODO 更新图书管理员
     * @Date 12:59 2018/9/13
     * @Param [bookAdmin]
     **/
    public void upBookAdmin(BookAdmin bookAdmin) {
        bookAdminDAO.upBookAdmin(bookAdmin);
    }

    /**
     * @return cn.chenforcode.entity.BookAdmin
     * @Author ChenforCode
     * @Description //TODO 得到单个图书管理员对象
     * @Date 13:19 2018/9/13
     * @Param [id]
     **/
    public BookAdmin getBookAdmin(String id) {
        return bookAdminDAO.getBookAdminByBaname(id);
    }

    /**
     * @return cn.chenforcode.entity.StuAdmin
     * @Author ChenforCode
     * @Description //TODO 得到单个学生管理员对象
     * @Date 13:20 2018/9/13
     * @Param [id]
     **/
    public StuAdmin getStuAdmin(String id) {
        return stuAdminDAO.getStuAdminBySaname(id);
    }
}
